// 当前页面的域名地址
var PageMainAddress = "";
// 当前页面的url
var PageUrl = "";
// 页面启动时间
var PageStartTime;
// 页面结束时间
var PageEndTime;
// 页面活动时间
var PageActiveTimer;
var PageActiveCount = 0;
var PrePageActiveTime = Date.parse(new Date());

// 获取页面启动信息
function GetCurPageStartInfo(){
    PageStartTime = new Date();
    MyDebugLog(PageStartTime.toLocaleString());
}

// 获取页面关闭时的信息
function GetCurPageEndInfo(){
    PageEndTime = new Date();
    MyDebugLog(PageEndTime.toLocaleString());
}

// 键盘事件
function MyKeyEvent(){
    PrePageActiveTime = Date.parse(new Date());
    MyDebugLog("键盘活动");
}

// 鼠标事件
function MyMouseEvent(){
    PrePageActiveTime = Date.parse(new Date());
    MyDebugLog("鼠标活动");
}

// 界面活动计时
function PageActiveTimeCount(){
    // 距离上次活动时间超过十秒就认为页面不是活动状态了
    var CurTime = Date.parse(new Date());
    if(CurTime - PrePageActiveTime > 10 * 1000/* 10s */){
        MyDebugLog("页面休眠中");
    }else{
        PageActiveCount++;
    }
}

// 初始化
function StatInit(){
    MyDebugAlert("页面启动");
    MyDebugLog("页面加载完成");
    // 暂时只记录域名地址,对于有端口号的一般都不是对外发布的吧
    var host = window.location.host;
    var protocol = window.location.protocol;
    PageUrl = window.location.href;
    PageMainAddress = protocol + "//" + host;
    MyDebugLog(PageMainAddress);
    MyDebugLog(PageUrl);
    // 统计启动信息
    GetCurPageStartInfo();

    // 键盘事件
    window.onkeypress = MyKeyEvent;
    // 鼠标事件
    window.onmousedown = MyMouseEvent;
    window.onmousemove =  MyMouseEvent;
    // 启动页面活动计时器
    PageActiveTimer = window.setInterval(PageActiveTimeCount, 1000);
}

// 清理
function StatUninit(){
    MyDebugLog("页面关闭");
    GetCurPageEndInfo();
    // 清理定时器
    window.clearInterval(PageActiveTimer);
    MyDebugLog("页面活动时间:"+PageActiveCount);
}

function StatModuleSet(IsOpen){
    // 初始化
    if(IsOpen == true){
        StatInit();
    }
    // 清理
    window.onbeforeunload = function(){
        if(IsOpen == true){
            StatUninit();
        }
    }
}